package com.kai.steering.data.service.util;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.Pipeline;


import java.util.List;
import java.util.Map;
import java.util.Set;

//@Component
public class RedisUtil {
//    @Autowired
//    private JedisPool jedisPool;
//
//
//    // 字符串操作
//    public String get(String key) {
//        try (Jedis jedis = jedisPool.getResource()) {
//            return jedis.get(key);
//        }
//    }
//
//    public void set(String key, String value) {
//        try (Jedis jedis = jedisPool.getResource()) {
//            jedis.set(key, value);
//        }
//    }
//
//    // 哈希操作
//    public void hset(String key, String field, String value) {
//        try (Jedis jedis = jedisPool.getResource()) {
//            jedis.hset(key, field, value);
//        }
//    }
//
//    public String hget(String key, String field) {
//        try (Jedis jedis = jedisPool.getResource()) {
//            return jedis.hget(key, field);
//        }
//    }
//
//    // 列表操作
//    public Long rpush(String key, String... strings) {
//        try (Jedis jedis = jedisPool.getResource()) {
//            return jedis.rpush(key, strings);
//        }
//    }
//
//    public List<String> lrange(String key, long start, long end) {
//        try (Jedis jedis = jedisPool.getResource()) {
//            return jedis.lrange(key, start, end);
//        }
//    }
//
//    // 集合操作
//    public Long sadd(String key, String... members) {
//        try (Jedis jedis = jedisPool.getResource()) {
//            return jedis.sadd(key, members);
//        }
//    }
//    // 集合操作，接受 List<String> 参数
//    public Long sadd(String key, List<String> members) {
//        try (Jedis jedis = jedisPool.getResource()) {
//            // 使用 Jedis 的 sadd 方法重载，它接受 Collection<String>
//            return jedis.sadd(key, String.valueOf(members));
//        }
//    }
//    public Set<String> smembers(String key) {
//        try (Jedis jedis = jedisPool.getResource()) {
//            return jedis.smembers(key);
//        }
//    }
//
//    // 有序集合操作
//    public Long zadd(String key, double score, String member) {
//        try (Jedis jedis = jedisPool.getResource()) {
//            return jedis.zadd(key, score, member);
//        }
//    }
//
//    public List<String> zrange(String key, long start, long end) {
//        try (Jedis jedis = jedisPool.getResource()) {
//            return jedis.zrange(key, start, end);
//        }
//    }
//
//    // 管道操作示例
//    public void performPipelinedOperations() {
//        try (Jedis jedis = jedisPool.getResource()) {
//            Pipeline pipeline = jedis.pipelined();
//            pipeline.set("key1", "value1");
//            pipeline.set("key2", "value2");
//            // ... 可以添加更多命令
//
//            // 执行管道中的所有命令并获取所有响应，但在这个例子中我们忽略它们
//            pipeline.syncAndReturnAll();
//
//            // 或者只执行命令，不获取响应
//            // pipeline.sync();
//        }
//    }

}




